Оператор DIM — QBasic(Бейсик)

Назначение :
Описывает массив, или указывает тип данных для переменного массива.

Как записывается :
для одномерного массива : dim x(i)
для двумерного массива : dim x(n,m)

Где :
dim — оператор массива
x — алгоритмическое имя
i — текущий номер элемента или его количество
n — количество строк
m — количество столбцов

Например :
Дан массив состоящий из следующей последовательности чисел : 15,3,-2,0,4,1,8,9.
Найти среднее арифметическое.

10 Dim A(8)
20 Data 15,3,-2,0,4,1,8,9
30 For I = 1 to 8
40 Read A(I)
50 Print A(I)
60 Next I
70 For I = 1 to 8
80 S = S + A(I)
90 Next I
100 Let S = S/8
110 End

Если в задаче обрабатываемые данные организуются в виде массивов, в этом случае интерпретатору требуется сообщить информацию, необходимую для распределения памяти под массивы, используемые в программе. Для этого используется оператор DIM.

Формат: DIM a1(m1), a2(m2),…, aN (mN)

ai — имя массива;

mi — список параметров, задающих максимальные значения индексов массива. Список mi может содержать одну или две целые константы или переменные, разделенные за пятыми, а также арифметические выражения. Индексы из меняются от 0 до максимального.

Пример: DIM A(4), B(5,8), A1$(5), B1$(3,4)

Оператор DIM описывает числовые массивы A и B, символьные массивы A1$ и B1$. Массив A одномерный и содержит 5 элементов A(0), A(1), A(2), A(3), A(4). Двумерный числовой массив B содержит 6 строк и 9 столбцов. Символьный одномерный массив A1$ состоит из 6 элементов. Символьный двумерный массив B1$ состоит из 20 элементов (4 строки, 5 столбцов).

Обработка массивов в языке BASIC проводится поэлементно. Оператор DIM, описывающий массив, должен быть расположен в программе до первого оператора, использующего его элементы.

Если в одномерном массиве не более 11 элементов, а в двумерном не более 11 строк и 11 столбцов, то такие массивы можно не описывать.

В качестве максимальных индексов можно использовать имена переменных. Но значения переменным должны быть присвоены до оператора DIM.

Пример 1: Пример 2:

10 INPUT N,K 10 INPUT N,М

20 DIM A(N),B(K,N) 20 DIM A(N+1,М)

Пример 3: Даны одномерные массивы A и B, содержащие по N элементов. Сформировать новый массив D, каждый элемент которого определяется по формуле: D(i)=A(i)+B(i)+C(i), i=1,2,…..,N

10 INPUT «Введите размерность массивов» ;N

20 DIM A(N),B(N),C(N),D(N)

30 FOR I=1 TO N

40 INPUT A(I),B(I),C(I)

50 NEXT I

60 FOR I=1 TO N

70 D(I)=A(I)+B(I)+C(I)

80 PRINT «D(«;I;»)=»;D(I);

90 NEXT I

100 END